package com.main.rentsystem.service;

import com.main.rentsystem.pojo.dto.UserPageQueryDTO;
import com.main.rentsystem.pojo.entity.Message;
import com.main.rentsystem.pojo.entity.PageBean;
import com.main.rentsystem.pojo.entity.User;
import com.main.rentsystem.pojo.vo.MessageVO;

import java.util.List;


public interface UserServer {

    /**
     * 用户登录
     *
     * @param userx
     * @return
     */
    User login(User userx);

    /**
     * 判断账号是否已经存在
     * @param user
     * @return
     */
    User isExist(User user);

    /**
     *用户注册
     * @param user
     */
    void register(User user);

    /**
     * 用户留言
     * @param message
     */
    void PutMessage(Message message);

    /**
     * 我的留言
     * @return
     */
    List<MessageVO> GetMessage(User user);

    /**
     * 获取所有用户信息
     * @return
     */
    PageBean getUserInfo(UserPageQueryDTO userPageQueryDTO);


    /**
     * 批量删除用户
     * @param ids
     */
    void deleteBatch(List<Long> ids);

    /**
     * 根据id修改用户信息
     * @param user
     */
    void updateById(User user);


    /**
     * 修改密码
     * @param user
     * @param newPassword
     */
    void changePassword(User user, String newPassword);

    /**
     * 查询用户
     * @param userId
     * @return
     */
    User getUserById(Long userId);
}
